import bpy


def source_obj():
  # 这个是你手动创建的 平面的 名称
  source_object_name = "平面.050"
  if source_object_name not in bpy.data.objects:
    raise ValueError(f"找不到名称为 {source_object_name} 的源对象")
  return bpy.data.objects[source_object_name]


def task():
  # 获取选中的物体
  selected_objects = bpy.context.selected_objects

  # 遍历选中的物体
  for obj in selected_objects:
    # 为每个选中的对象添加数据传递修改器
    modifier = obj.modifiers.new(name="Data Transfer", type='DATA_TRANSFER')
    # 设置修改器的源对象
    modifier.object = source_obj()

    # 启用 面拐数据
    modifier.use_loop_data = True
    modifier.loop_mapping = 'NEAREST_POLYNOR'

if __name__ == '__main__':
  task()
